// ==UserScript==
// @name         自动评教基础版
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Auto select radio buttons with "很好" label, click save button, and automatically confirm the pop-ups
// @author       hj-x and ChatGPT3.5
// @match        *://yjsjy.cufe.edu.cn/yjsxt/xspjgl/*
// @match        *://yjsjy.webvpn.cufe.edu.cn/yjsxt/xspjgl/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 创建一键很好并保存按钮
    const oneKeyButton = document.createElement('button');
    oneKeyButton.textContent = '一键很好并保存';
    oneKeyButton.classList.add('btn', 'btn-primary');
    oneKeyButton.style.marginTop = '10px';

    // 添加按钮点击事件
    oneKeyButton.addEventListener('click', function() {
        // 找到包含“很好”标签的所有单选框
        const radioContainers = document.querySelectorAll('.radio-inline.input-xspj');

        // 遍历所有单选框容器
        radioContainers.forEach(container => {
            // 找到单选框中包含“很好”标签的 label
            const labels = container.querySelectorAll('label');

            // 遍历 label 查找包含 "很好" 的 label
            labels.forEach(label => {
                if (label.textContent.includes("很好")) {
                    const radioButton = label.querySelector('input[type="radio"]');
                    if (radioButton) {
                        radioButton.checked = true;
                    }
                }
            });
        });

        // 找到保存按钮并点击
        const saveButton = document.getElementById('btn_xspj_bc'); // 使用新的保存按钮选择器
        if (saveButton) {
            saveButton.click();

            // 等待一定时间后自动确认第一个弹窗
            setTimeout(function() {
                const firstConfirmButton = document.getElementById('btn_confirm');
                if (firstConfirmButton) {
                    firstConfirmButton.click();

                    // 等待一定时间后自动确认第二个弹窗
                    setTimeout(function() {
                        const secondConfirmButton = document.getElementById('btn_ok');
                        if (secondConfirmButton) {
                            secondConfirmButton.click();
                        }
                    }, 1000); // 1秒后确认第二个弹窗，你可以根据实际情况调整等待时间
                }
            }, 1000); // 1秒后确认第一个弹窗，你可以根据实际情况调整等待时间
        }
    });

    // 找到页面中的指定位置并添加按钮
    const navbarContainer = document.getElementById('navbar_container');
    if (navbarContainer) {
        const textRightDiv = navbarContainer.querySelector('.navbar-header');
        if (textRightDiv) {
            textRightDiv.appendChild(oneKeyButton);
        }
    }
})();
